package com.mvc.dao;

import com.mvc.entity.Dog;

import java.util.List;

/**
 * @author wzm
 * @create 2023-04-12 11:45
 */
public interface DogDao {
    //设计操作Dog相关的底层功能 提供给以后统筹整个功能的类使用
    //通常都是设计增删改查

    /**
     * 新增Dog的抽象方法
     * @param dog 参数 通过传入Dog对象 灵活的插入传入的值
     * @return 返回执行后受影响的行数
     */
     int insert(Dog dog);

    /**
     * 删除Dog的抽象方法
     * @param dog 参数 通过传入Dog对象 灵活的删除传入的值
     * @return 返回执行后受影响的行数
     */
     int delete(Dog dog);

    /**
     * 修改Dog的抽象方法
     * @param dog 参数 通过传入Dog对象 灵活的修改传入的值
     * @return 返回执行后受影响的行数
     */
     int update(Dog dog);


    /**
     * 根据id来查询Dog信息的抽象方法
     * @param dog 传入的dog对象
     * @return 查询后的完整的Dog信息
     */
     Dog selectById(Dog dog);

    /**
     * 查询全部Dog信息的方法
     * @return 查询后存储Dog的集合
     */
     List<Dog> selectByList();

     //根据业务逻辑的需要可能还需要定义其他的方法

}
